//package com.zlx.module_base.sys_info;
//
//import android.content.Context;
//
//import androidx.annotation.NonNull;
//import androidx.fragment.app.FragmentManager;
//
//import java.util.List;
//
///**
// * <li>标题:菜单构造与解析
// * <li>说明:
// * <li>创建人：邹旭
// * <li>创建日期：2019-12-11 09:13
// * <li>修改人:
// * <li>修改日期：
// * <li>修改内容：
// */
//public abstract class AbstractMenuManager {
//    public abstract List<MenuEntity> getFixedMenus();
//
//    public  abstract void onMenuClick(@NonNull MenuEntity curMenu, Context mContext, FragmentManager fragmentManager);
//
//    //是否关联 JT6
//    protected  boolean isIncludeInZbJT6() {
//        return SysInfo.wrokTypeCode==SysInfo.GLY_CODE||SysInfo.wrokTypeCode==SysInfo.ZB_CODE;
//    }
//
//    //是否关联 JT28
//    protected   boolean isIncludeInXcxJT28() {
//        return SysInfo.isGLY() || SysInfo.isJXCJ();
//    }
//
//    /**
//     * <li>说明:
//     * 1.排除服务器返回的多余菜单项
//     * 2.JT28,JT6菜单互斥处理:排除菜单
//     * 3.排除异常菜单：gnmc为null
//     * <li>创建时间:2019-10-11 15:04
//     * <li>创建人: 邹旭
//     * <li>修改人：
//     * <li>修改日期：
//     * <li>修改内容：
//     * @param menus
//     */
//    public  void excludeSomeMenus(List<MenuEntity> menus) {
//        for (int i = menus.size() - 1; i >= 0; i--) {
//            //【1.】菜单配置错误
//            if (menus.get(i).gnmc == null) {
//                menus.remove(i);
//                continue;
//            }
//            //【2.】服务器端：JT6/JT28菜单附带一个type信息(JT6,JT28...)
//            //【3.】多余菜单项
//            String gnmc = menus.get(i).gnmc.toUpperCase();//转大写
//            String type = menus.get(i).type;
//            if (SysInfo.wrokTypeCode==SysInfo.XCX_CODE) {//检修车间 - 移除JT6...菜单
//                switch (gnmc) {
//                    // modified by zouxu on 2020/3/11 09:35 检修亦可以查看JT6
////                    case "JT6":
////                    case "JT6报修":
////                    case "JT6修活":
////                    case "JT6管理":
////                    case "JT6互检":
////                    case "JT6专检":
//                        //  不显示JT6(ZB_CODE)的专属菜单
//                    case MenuConstant.MENU_JCYJ:
//                    case "机车上砂":
//                    case "机车保洁":
//                    case "外勤派车":
//                    case "运用收车":
//                        menus.remove(i);
//                        continue;
//                    case "故障假设管理":
//                        if (MenuConstant.BAOXIU_BXLX_JT6.equalsIgnoreCase(type)){
//                            menus.remove(i);
//                            continue;
//                        }
//                }
//            }else if (SysInfo.wrokTypeCode==SysInfo.ZB_CODE){//整备车间 - 移除JT28...菜单
//                switch (gnmc) {
//                    case MenuConstant.BAOXIU_GROUP_JT28:
//                    case "JT28报修":
//                    case "JT28修活":
//                    case "JT28管理":
//                    case "JT28互检":
//                    case "JT28专检":
//                        //  不显示JT28(XCX_CODE)的专属菜单
//                    case "接车登记":
//                    case "复检":
//                    case "班组点名":
//
//                    case "试验":
//                    case "请验":
//                    case "验交":
//                        menus.remove(i);
//                        continue;
//                    case "故障假设管理":
//                        if (MenuConstant.BAOXIU_BXLX_JT28.equalsIgnoreCase(type)){
//                            menus.remove(i);
//                            continue;
//                        }
//                }
//            }
//        }
//    }
//
//    /**是否为匹配的菜单，菜单角标
//     * 菜单名相同 - 并且服务器菜单typeJT6/28菜单分组下的菜单，或者
//     * @param serverMenu
//     * @param localMenu
//     * @return
//     */
//    public  boolean isMatchMenu(MenuEntity serverMenu, MenuEntity localMenu) {
//        return serverMenu.gnmc.equals(localMenu.gnmc) && (serverMenu.type == null
//                || serverMenu.type.equalsIgnoreCase("JCFS")
//                ||serverMenu.type.equalsIgnoreCase(MenuConstant.BAOXIU_BXLX_JT28)&&localMenu.group!=null&&MenuConstant.BAOXIU_GROUP_JT28.equalsIgnoreCase(localMenu.group.gnmc)
//                ||serverMenu.type.equalsIgnoreCase(MenuConstant.BAOXIU_BXLX_JT6)&&localMenu.group!=null&&MenuConstant.BAOXIU_GROUP_JT6.equalsIgnoreCase(localMenu.group.gnmc));
//    }
//
//
//}
